package com.southminority.ethnic.service.student;

import com.southminority.ethnic.pojo.StudentActivity;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.southminority.ethnic.controller.student.vo.ActivityPageVo;
import com.southminority.ethnic.controller.student.vo.ActivityDetailVo;

/**
 * @author SouthMinority
 * @description 针对表【student_activity(学生活动表)】的数据库操作Service
 * @createDate 2025-11-17
 */
public interface StudentActivityService extends IService<StudentActivity> {
    
    /**
     * 增加活动浏览次数
     * @param id 活动ID
     * @return 是否成功
     */
    Boolean incrementViews(Long id);
    
    /**
     * 分页查询学生活动
     * @param pageNum 页码
     * @param pageSize 每页大小
     * @param keyword 搜索关键词
     * @param status 状态筛选（0-草稿，1-已发布，2-已下架，null表示全部）
     * @return 分页结果
     */
    Page<ActivityPageVo> getActivityPage(Integer pageNum, Integer pageSize, String keyword, Integer status);
    
    /**
     * 获取活动详情（包含完整内容和图片）
     * @param id 活动ID
     * @return 活动详情
     */
    ActivityDetailVo getActivityDetail(Long id);
}
